home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / lang_c / alib12 / consult.doc < prev    next >
Text File  |  1992-03-29  |  17KB  |  442 lines

  1.  
  2.  
  3.  
  4.  
  5.      CONSULT.DOC
  6.  
  7.      Contents
  8.  
  9.      Consulting/Contracting Advertisement  . . . . . . . . . . . . . .    1
  10.  
  11.  
  12.      Consulting/Contracting Advertisement
  13.  
  14.      I am interested in creating an automated test suite for your product
  15.      using this tool.  I have developed the following flow chart to assist
  16.      you on your decision to hire me.  Your answers must be 'yes' for a
  17.      good fit.  However, before answering, please read the detailed
  18.      information on each question, which follows this flow chart.
  19.  
  20.      Also, if you need more help in determining the answers to these
  21.      questions, contact me.
  22.  
  23.                     --------------------------
  24.                     - QUESTION 1:            -
  25.                     - Are you interested     -
  26.                     - in hiring a contractor -
  27.                     - to write an            -
  28.                     - automated test suite?  -
  29.                     --------------------------
  30.                             |
  31.                             | Yes
  32.                             |
  33.                             V
  34.                     -------------------------
  35.                     - QUESTION 2:           -
  36.                     - Is it possible        -
  37.                     - to test your product  -
  38.                     - using the AutoLibrary -
  39.                     - Program-Playback tool?-
  40.                     -------------------------
  41.                             |
  42.                             | Yes
  43.                             |
  44.                             V
  45.                     ------------------------
  46.                     - QUESTION 3:          -
  47.                     - Do you want your     -
  48.                     - test suite written   -
  49.                     - in the C programming -
  50.                     - language?            -
  51.                     ------------------------
  52.                             | Yes  (Go to next page)
  53.  
  54.  
  55.  
  56.                                                                           1
  57.  
  58.  
  59.  
  60.                             |
  61.                             |
  62.                             V
  63.                     ------------------------
  64.                     - QUESTION 4:          -
  65.                     - Will I be able to    -
  66.                     - test your product    -
  67.                     - from my home office? -
  68.                     ------------------------
  69.                             |
  70.                             | Yes
  71.                             |
  72.                             V
  73.                     --------------------
  74.                     - QUESTION 5:      -
  75.                     - Will you benefit -
  76.                     - by having your   -
  77.                     - tests automated? -
  78.                     --------------------
  79.                             |
  80.                             | Yes
  81.                             |
  82.                             V
  83.                     -----------------------
  84.                     - QUESTION 6:         -
  85.                     - Does your company   -
  86.                     - and management      -
  87.                     - support the idea of -
  88.                     - test automation?    -
  89.                     -----------------------
  90.                             |
  91.                             | Yes
  92.                             |
  93.                             V
  94.                     -------------------------
  95.                     - You may want to hire  -
  96.                     - me to write an        -
  97.                     - automated test suite  -
  98.                     - for your product.     -
  99.                     - (Please read the      -
  100.                     - following text.)      -
  101.                     -------------------------
  102.  
  103.      If you are interested, please give me a call or send email.  There is
  104.      no charge for initial consultations.  My qualifications include a
  105.      degree in Computer Science from Washington State University and
  106.      industry experience since 1983.  I am an experienced user of MS-DOS
  107.      and the Unix operating system.
  108.  
  109.  
  110.  
  111.                                                                           2
  112.  
  113.  
  114.  
  115.      My industry experience includes developing an automated network access
  116.      program, developing an automated test suite for a target debug
  117.      monitor, developing 2 real-time operating systems, and sustaining a
  118.      parallel operating system.
  119.  
  120.      I have been working on automation in one form or another since 1985
  121.      and on the AutoLibrary(tm) Program-Playback tool since 1989.
  122.  
  123.      I hope you decide to give me a call.
  124.  
  125.      Notes _____________________________________________________
  126.  
  127.      ___________________________________________________________
  128.  
  129.      ___________________________________________________________
  130.  
  131.      ___________________________________________________________
  132.  
  133.  
  134.  
  135.      QUESTION 1:
  136.  
  137.      Are you interested in hiring a contractor to write an automated test
  138.      suite?
  139.  
  140.      Before answering this question, please consider some of the advantages
  141.      of having an independent contractor test your product.  
  142.      If your answer is yes, great, please continue the flow chart.
  143.  
  144.      If your answer is no, the flow chart may still help if you are making
  145.      a decision on using this tool in your test automation plans.
  146.  
  147.      Notes _____________________________________________________
  148.  
  149.      ___________________________________________________________
  150.  
  151.      ___________________________________________________________
  152.  
  153.      ___________________________________________________________
  154.  
  155.      QUESTION 2:
  156.  
  157.      Is it possible to test your product using the AutoLibrary(tm) Program-
  158.      Playback tool?
  159.  
  160.      The answer to this question could very well be no, since the 
  161.      AutoLibrary(tm) Program-Playback tool was written to address a
  162.      specific type of testing.  The following survey will allow you to
  163.  
  164.  
  165.  
  166.                                                                           3
  167.  
  168.  
  169.  
  170.      determine if your testing requirements fit within the parameters of
  171.      this tool.
  172.  
  173.      A)   Does your product use serial communication?  Yes ___  No ___
  174.  
  175.           Your product must be testable via some type of serial connection. 
  176.           RS-232 is supported directly and is quite common.  Other
  177.           protocols, like RS-422 and IEEE-488, can be supported by
  178.           modifying the interface routines.  The interface routines can
  179.           also be modified to support networks.  See the documentation for
  180.           CommInterfaceOpen, CommInterfaceClose, CommInterfaceRead, and
  181.           CommInterfaceSend in this manual for details of supporting other
  182.           communication protocols.
  183.  
  184.           Notes _____________________________________________________
  185.  
  186.           ___________________________________________________________
  187.  
  188.           ___________________________________________________________
  189.  
  190.           ___________________________________________________________
  191.  
  192.  
  193.      B)   Does your product have a human interface?  Yes ___ No ___
  194.  
  195.           Does your product have a command line prompt? Yes ___ No ___
  196.  
  197.           Human interfaces wait for commands to be typed in at the command
  198.           prompt.  The response to commands are then displayed.  I have
  199.           split this question into two parts because it is possible to
  200.           implement a command line interface that is meant for other
  201.           computers instead of for humans.  This tool will work fine for
  202.           both types.
  203.  
  204.           Notes _____________________________________________________
  205.  
  206.           ___________________________________________________________
  207.  
  208.           ___________________________________________________________
  209.  
  210.           ___________________________________________________________
  211.  
  212.  
  213.      C)   Can your product be tested *by* an IBM PC or compatible?
  214.               Yes ___  No ___
  215.  
  216.           The key word here is *by*, since, the system under test cannot be
  217.           the PC that is executing the AutoLibrary(tm) automation program. 
  218.  
  219.  
  220.  
  221.                                                                           4
  222.  
  223.  
  224.  
  225.           The system under test is connected to a PC via a serial port. 
  226.           The following list of questions will illustrate this point.
  227.  
  228.           a)   Can a modem be tested using this tool?
  229.  
  230.                Yes.  The PC can be connected to the modem via a serial
  231.                port.  A test program can be written using the
  232.                AutoLibrary(tm) Program-Playback tool.  Such a program would
  233.                send commands to the modem and capture expected responses. 
  234.                The captured responses would then be compared to expected
  235.                responses.
  236.  
  237.           b)   Can an ASCII terminal be tested using this tool?
  238.  
  239.                Yes.  The PC can be connected to the terminal via a serial
  240.                port.  Most terminals have host commands (ESC sequences)
  241.                that allow the host to change the operating features of the
  242.                terminal.  An AutoLibrary(tm) automation program could be
  243.                written to test these features.  (The Wyse demo, in the
  244.                self-extracting file ex02.com, does this.)
  245.  
  246.                For terminals, it is not possible to automatically type in
  247.                characters.  However, it is possible to use this tool to
  248.                semi-automate typed commands.  For example, the automation
  249.                program could prompt a user on what to type in.  Then the
  250.                automation program could verify that the terminal responded
  251.                correctly.  The automation program would also track what
  252.                features have been tested and remind the operator on the
  253.                remaining tests to be run.
  254.  
  255.           c)   Can special equipment, such as medical instruments, be
  256.                tested using this tool?
  257.  
  258.                Yes, provided that there is some way to communicate to the
  259.                instrument via a serial connection.  Many times a special
  260.                RS-232 port is designed in specifically for test automation. 
  261.                Note, however, that the serial connection does not have to
  262.                be RS-232.  Interface routines can be written to communicate
  263.                to any protocol.
  264.  
  265.           d)   Is it possible to test programs that run on operating
  266.                systems like DOS and Unix?  What if the programs use a
  267.                mouse?
  268.  
  269.                Mostly Yes.  This tool works great for Unix and other
  270.                operating systems, like VMS, that support serial connections
  271.                via terminals.  Your automation program, which runs on a PC,
  272.                would connect to one of the Unix operating systems serial
  273.  
  274.  
  275.  
  276.                                                                           5
  277.  
  278.  
  279.  
  280.                ports.  Unix would just see the connection as another user
  281.                and would not be aware of the automation.
  282.  
  283.                This tool cannot test DOS programs, since it is a DOS
  284.                program itself.  However, with two PC's it may be possible. 
  285.                The first PC would execute the program to be tested and the
  286.                other PC would have the automation program.  Remote software
  287.                (like pcAnywhere) would be used to redirect all input and
  288.                output through a serial connection.  I have not tried this
  289.                technique at the time of this printing.  However, given my
  290.                understanding of how remote software tools work, I believe
  291.                it would work fine.  The key is to somehow get all input and
  292.                output flowing through a serial connection from a PC.
  293.  
  294.                I haven't tried this tool with a mouse.  However, given my
  295.                understanding of a serial mouse, automation with this tool
  296.                is possible.  Your automation program would open two
  297.                AutoLibrary(tm) automation ports, one for typed commands and
  298.                the other for mouse commands.  The mouse port would send
  299.                mouse commands and scan for responses just like the command
  300.                port.
  301.  
  302.           Notes _____________________________________________________
  303.  
  304.           ___________________________________________________________
  305.  
  306.           ___________________________________________________________
  307.  
  308.           ___________________________________________________________
  309.  
  310.  
  311.      QUESTION 3:
  312.  
  313.      Do you want your test suite written in the C programming language?
  314.  
  315.      C programs, using this tool, are written to automatically send
  316.      commands to the system under test.  The automation program then
  317.      captures and compares the results to expected results.  Automation
  318.      sequences that are common can be written as a subroutine.  Formal
  319.      parameters can be added to subroutines to accommodate variations in
  320.      the testing environment.  Automation programs read like real C
  321.      programs:  with subroutines, variables, data structures, flow control,
  322.      and file I/O.  Also, automation programs written with this tool have
  323.      the additional advantage of using the C libraries and commercial add-
  324.      on libraries.  All of this allows automation programs to be flexible
  325.      and effective.
  326.  
  327.      The AutoLibrary(tm) Program-Playback tool is not a capture-playback
  328.      tool.
  329.  
  330.  
  331.                                                                           6
  332.  
  333.  
  334.  
  335.  
  336.      Notes _____________________________________________________
  337.  
  338.      ___________________________________________________________
  339.  
  340.      ___________________________________________________________
  341.  
  342.      ___________________________________________________________
  343.  
  344.  
  345.  
  346.      QUESTION 4:
  347.  
  348.      Will I be able to test your product from my home office?
  349.  
  350.      This answer must be yes.
  351.  
  352.      Notes _____________________________________________________
  353.  
  354.      ___________________________________________________________
  355.  
  356.      ___________________________________________________________
  357.  
  358.      ___________________________________________________________
  359.  
  360.  
  361.  
  362.      QUESTION 5:
  363.  
  364.      Will you benefit by having your tests automated?
  365.  
  366.      Since test automation is expensive, you need to justify this cost with
  367.      future benefits.  The following list of questions will help you
  368.      decide.
  369.  
  370.           a)   Will an automated test suite help you with future releases
  371.                of the software?
  372.  
  373.                You must compare the cost of developing the automated test
  374.                suite against the cost of running the regression tests
  375.                manually over the life of the software.
  376.  
  377.                If you plan to sustain the software and produce updates with
  378.                enhancements and bug fixes, and you are concerned about new
  379.                enhancements and fixes potentially breaking something that
  380.                once worked, an automated regression test suite would be
  381.                helpful.
  382.  
  383.  
  384.  
  385.  
  386.                                                                           7
  387.  
  388.  
  389.  
  390.           b)   Do you have a requirement to supply each customer with an
  391.                acceptance test?
  392.  
  393.                If you have a requirement to supply your product with an
  394.                acceptance test, you may want an automated acceptance test
  395.                to document the features being tested.  An automated
  396.                acceptance test will give your product a professional look. 
  397.                You can even provide your customers with the source code to
  398.                the acceptance test for their scrutiny.
  399.  
  400.           c)   Does you product need stress testing?
  401.  
  402.                You may have a product that needs stress testing.  An
  403.                automation program will be able to send command sequences
  404.                faster than humans and be able to simulate many users.
  405.  
  406.  
  407.      Notes _____________________________________________________
  408.  
  409.      ___________________________________________________________
  410.  
  411.      ___________________________________________________________
  412.  
  413.      ___________________________________________________________
  414.  
  415.  
  416.      QUESTION 6:
  417.  
  418.      Does your company and management support the idea of test automation?
  419.  
  420.      This is an important question to analyze honesty.  I have found that
  421.      *everyone* likes the idea of test automation.  However, I have also
  422.      found that most people don't understand the cost of automating test
  423.      suites.  Automation requires significant time and effort to create. 
  424.      Then, once created, automated test suites need to be sustained along
  425.      with the software.  So, there is a real cost to develop automated test
  426.      suites and real costs to maintaining them.  Everyone must agree that
  427.      this cost is outweighed by the benefits gained.
  428.  
  429.      Notes _____________________________________________________
  430.  
  431.      ___________________________________________________________
  432.  
  433.      ___________________________________________________________
  434.  
  435.      ___________________________________________________________
  436.  
  437.  
  438.  
  439.  
  440.  
  441.                                                                           8
  442.